
//作用是 根据请求到的用户的菜单结合dynamicRoute里面的配置 生成用户可以访问的页面


//标识 对比title属性

/**
 * 
 * @param {Array} dynamicRoute 用户本地的完整配置
 * @param {Array} menulist 服务器返回的用户菜单数据
 */

let recursionRoutes = (dynamicRoute = [], menulist = []) => {
    // console.log(dynamicRoute)
    // console.log(menulist)

    //用于存储处理之后的用户路由
    let userRoute = []
    menulist.forEach(menu => {
        dynamicRoute.forEach(route => {
            if (menu.title === route.meta.title) {
                //判断菜单数据有没有children,如果有children 
                //menu的children要和route的children进行递归对比
                if (menu.children && menu.children.length > 0) {
                    //递归处理
                    route.children = recursionRoutes(route.children, menu.children)
                }

                userRoute.push(route)
            }
        })
    })

    return userRoute
}


export default recursionRoutes;